home *** CD-ROM | disk | FTP | other *** search
/ MACD 5 / MACD 5.bin / workbench / tools / czesc_1 / cliva / cliva_eng.doc < prev    next >
Text File  |  1994-01-11  |  35KB  |  870 lines

  1. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##########################
  2. @@@@@@     @@   @@@@@     @@   @@@   @@@@   @@@@@@@####     #######     #####
  3. @@@@@   @@@@@   @@@@@@   @@@   @@@   @@@     @@@@@@###  ###  #####  ###  ####
  4. @@@@@   @@@@@   @@@@@@   @@@   @@@   @@   @   @@@@@########  #####  ###  ####
  5. @@@@@   @@@@@   @@@@@@   @@@@   @   @@@       @@@@@####     ######  ###  ####
  6. @@@@@   @@@@@   @@@@@@   @@@@   @   @@   @@@   @@@@###  ##########  ###  ####
  7. @@@@@@     @@      @@     @@@@    @@@@   @@@   @@@@###      ##  ###     #####
  8. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##########################
  9.  
  10. CliVa v2.0 Copyright © 1991 1992 1993 Christian Warren  All rights reserved.
  11. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  12.    CliVa is placed in the Public Domain for the Amiga.  A shareware fee
  13. of 15$ is suggested to use it.  Feel free to use it, but AT YOUR OWN RISK,
  14. as I cannot be considered responsible for any damage caused to your system.
  15.  
  16. Introduction
  17. ~~~~~~~~~~~~
  18.    CliVa will give you the chance to build a interface entirely configurable
  19. to launch your applications from gadgets. If you want to have a better idea of
  20. the possibility of CliVa, I encourage you to check for the examples supplied
  21. in the archive.
  22.    To use CliVa, you must have the 'PowerPacker.library' (permit the
  23. compression of the config) and the 'req.library'. These two library are
  24. present in the archive, if you execute the 'Example' file the library will be
  25. charged in memory but not copied to your system. To install them on your
  26. system you must click on the 'Install CliVa' Button.
  27.  
  28. Requirement
  29. ~~~~~~~~~~~
  30.    - CliVa must be able to access the 'PowerPacker.library', the
  31.    'req.library' and the 'diskfont.library'.
  32.    - The file 'echo', 'execute', 'newshell' and 'mouse' must be present in one
  33.    of the directory of the path.
  34.    - The OS 2.0 IS NOT required for CliVa.
  35.  
  36. Information on the CliVa executable
  37. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  38.    - CliVa is 'pure', you can make it resident.
  39.  
  40.    SHELL usage:
  41.             Cliva {-configuration} Other.config {-configuration}
  42.  
  43.    WORKBENCH usage:
  44.             -configuration
  45.             ...
  46.             Other.config
  47.             ...
  48.  
  49.    argument:
  50.       '-configuration' ==> CliVa take the arguement as if it as been placed at
  51.                            the beginning of the config file.
  52.                         ex.
  53.                            CliVa "-TASK_PRIORITE 3" "-SET_VAR BLACK 0"
  54.  
  55.       'Other.config' ==> Config to load.  By default, CliVa search in the
  56.                          current path for the file 'CliVa.config' then he
  57.                          search it in the directory S:.
  58.                       ex.
  59.                          CliVa Other.config
  60.  
  61.  
  62. CliVa Configuration Commands
  63. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  64.      Name:  TASK_PRIORITY
  65.    format:  -TASK_PRIORITY priority
  66.   default:  priority = 0
  67.  function:  Define the task priority of CliVa, must be between -19 and +19.
  68.  
  69.      Name:  DEF_WINDOW_EXECUTE
  70.    format:  -DEF_WINDOW_EXECUTE shell_window_definition
  71.   default:  "CON:000/095/640/105/CliVa_Shell"
  72.  function:  Define all shell output specifications which will be opened if
  73.             the selected gadget needs an output window.
  74.  
  75.      Name:  ON_SCREEN
  76.    format:  -ON_SCREEN my_screen
  77.   default:  "Workbench"
  78.  function:  Opens CliVa on a particular screen. The supplied name of the
  79.             screen can consist of the first few letters of the targeted
  80.             real name screen. If the screen is not found, CliVa will open
  81.             on the default screen. Make sure you close CliVa before you
  82.             close the screen it is on, because you will be meditating about
  83.             your error while rebooting your system.:-)
  84.             ex. -ON_SCREEN CED  -> Open Cliva on the Cygnus Ed screen
  85.  
  86.      Name:  ICONIFIED
  87.    format:  -ICONIFIED
  88.  function:  CliVa will start iconified.
  89.  
  90.      Name:  ICON_WHEN_EXECUTE
  91.    format:  -ICON_WHEN_EXECUTE
  92.  function:  The 'AutoIconify' option in the menu will be selected.
  93.             (more on this AutoIconify function further down)
  94.  
  95.      Name:  WINDOW_TITLE
  96.    format:  -WINDOW_TITLE title
  97.   default:  "CliVa 2.0 (c) 1991-1993 Christian Warren"
  98.  function:  Changes the window title. If CliVa's configuration is more
  99.             than one page, the following will be inserted "   (Page xxx/max )"
  100.             to the titlebar. If the NO_DRAG_BAR option is used, the Screen
  101.             titlebar will be used.
  102.  
  103.      Name:  NO_DRAG_BAR
  104.    format:  -NO_DRAG_BAR
  105.  function:  The window does not have a visible DragBar. CliVa will create
  106.             invisible gadgets to replace those that are eliminated.
  107.             Those invisible gadgets will be placed at the top of the window.
  108.  
  109.      Name:  NO_MENU
  110.    format:  -NO_MENU
  111.  function:  Does not attach a menu to the screen. You must define a "Quit"
  112.             gadget if you want to be able to Quit CliVa.
  113.  
  114.      Name:  FONT
  115.    format:  -FONT font height
  116.   default:  system font by default.
  117.  function:  Define the font to be used and its height.
  118.             ex. -FONT Diamond.font 14
  119.  
  120.      Name:  POS_WINDOW
  121.    format:  -POS_WINDOW position_x position_y
  122.   default:  position_x = 0             position_y = 11
  123.  function:  Define CliVa's top left window corner. If your entry is more
  124.             then the screen border, the position will be ajusted to be as
  125.             close as possible. An example would be if you define X as 2000,
  126.             then CliVa's window will be against the right side screen border.
  127.  
  128.      Name:  COLOR_WINDOW
  129.    format:  -COLOR_WINDOW Letter_color Background_color
  130.   default:  Letter_color = 2         Background_letter_color = 1
  131.  function:  Define colors to be used in the window. These colors are, among
  132.             things, used for menus and window border.
  133.  
  134.      Name:  COLOR_BACKGROUND
  135.    format:  -COLOR_BACKGROUND color
  136.   default:  color = 2
  137.  function:  Define color for background of the window.
  138.  
  139.      Name:  NB_GADGETS
  140.    format:  -NB_GADGETS nb_horizontal nb_vertical
  141.   default:  nb_horizontal = 5          nb_vertical = 4
  142.  function:  Define how many horizontal and vertical gadgets.
  143.  
  144.      Name:  UP_TO_DOWN
  145.    format:  -UP_TO_DOWN
  146.  function:  The gadgets will be numbered from top to buttom instead of
  147.             left to right.
  148.  
  149.             NORMAL               UPDOWN
  150.             1  2  3              1  4  7
  151.             4  5  6              2  5  8
  152.             7  8  9              3  6  9
  153.  
  154.      Name:  SIZE_GADGET
  155.    format:  -SIZE_GADGET Width height
  156.   default:  width = 112              height = 13
  157.  function:  Define width and height of gadgets.
  158.  
  159.      Name:  PIXEL_BETWEEN_GADGET
  160.    format:  -PIXEL_BETWEEN_GADGET space_x space_y
  161.   default:  space_x = 12             space_y = 4
  162.  function:  Define space, in pixels, between the gadgets.
  163.  
  164.      Name:  PIXEL_FROM_BORDER
  165.    format:  -PIXEL_FROM_BORDER left right top buttom
  166.   default:  left = 16    right = 16    top = 5    buttom = 5
  167.  function:  Define space, in pixels, between the gadgets and the border
  168.             of the window.
  169.  
  170.      Name:  COLOR_BORDER_GADGET
  171.    format:  -COLOR_BORDER_GADGET color_Top color_Buttom
  172.   default:  color_Top = 1            color_Buttom = 0
  173.  function:  Define colors to be used for the gadgets borders.
  174.  
  175.      Name:  COLOR_GADGET_DEF
  176.    format:  -COLOR_GADGET_DEF Letter_color Back_color
  177.   default:  Letter_color = 1         Back_color = 2
  178.  function:  Define default color for gadgets.
  179.  
  180.      Name:  FONT_STYLE
  181.    format:  -FONT_STYLE style
  182.   default:  NORMAL
  183.  function:  Define default font style for the gadgets. You must enter
  184.             a number defining the font style.
  185.             PLAIN TEXT = 0             UNDERSCORE = 1
  186.               BOLDFACE = 2                ITALICS = 4
  187.               EXTENDED = 8
  188.             ex. BOLDFACE + ITALICS -> 2 + 4  ==> -FONT_STYLE 6
  189.  
  190.      Name:  GADGET_ICONIFIED
  191.    format:  -GADGET_ICONIFIED name
  192.   default:  "CliVa"
  193.  function:  Define what will be written in CliVa's iconified window.
  194.  
  195.      Name:  DEF_ICON
  196.    format:  -DEF_ICON position_x position_y width
  197.   default:  position_x = 0     position_y = 11     width = 100
  198.  function:  Define CliVa's top left window corner position and width.
  199.              ( minimum width = 26)
  200.             The X and Y arguments are subject to the same defenition of
  201.             POS_WINDOW. The height of the window will respect the
  202.             gadgets height.
  203.  
  204.      Name:  SET_VAR
  205.    format:  -SET_VAR name value
  206.  function:  Define a variable to ease creation of scripts.
  207.             You can define as many variables as you wish. Once defined,
  208.             CliVa will replace the -name- by its -numeric_value- when a
  209.             configuration needs a number as an argument.
  210.             If a variable name is define more than once, only the first
  211.             occurance will be used. Variables usage is encouraged to create
  212.             easy modifiable scripts.
  213.  
  214.             ex.   -SET_VAR red                3
  215.                   -SET_VAR blue               2
  216.                   -SET_VAR Boldface_Undescore 3
  217.  
  218.                   -COLOR_GADGET_DEF red blue
  219.                   -FONT_STYLE Boldface_Undescore
  220.  
  221. Notes.
  222.       - The variables defined by SET_VAR can be used anywhere when the
  223.         argument required is a number.
  224.    ex. -SET_VAR red 2                   <= OK
  225.        -SET_VAR Titre "CliVa 2.0"  <= ERROR
  226.        -COLOR_BACKGROUND red       <= OK
  227.        -WINDOW_TITLE Title         <= ERROR
  228.        -WINDOW_TITLE red           <= window title -> 'red'
  229.  
  230.       - The argument which have imbedded spaces must be quoted using '"'.
  231.          ex. -WINDOW_TITLE "CliVa 2.0"
  232.  
  233.       - These commands MUST BE placed before any gadget definition.
  234.         If a command is placed after a gadget definition, it will be shown
  235.         in the gadget definition.
  236.  
  237.       - You can comment lines using the '#' at the beginning of the line.
  238.  
  239. Gadgets definition
  240. ~~~~~~~~~~~~~~~~~~
  241.  
  242.    These arguments are used to define a gadget.
  243.       Title of gadget = Chain of characters to be written in the gadget. The
  244.                         title of the gadget can contain [<number>]. It will
  245.                         insert the content of the defined variable <number>.
  246.                         If the variable's value changes, it will be reflected
  247.                         in the gadget's title
  248.                         ex.
  249.                            variable 1 = "OS 2.0"
  250.                            title      = "Color [1]"
  251.                            Result    -> "Color OS 2.0"
  252.       Letter_color  = Color used for the letters in a gadget.
  253.       Back_color    = Color for the background in a gadget.
  254.       Font_style    = Font style for a gadget.
  255.                         (see configuration FONT_STYLE)
  256.  
  257.    Nine types of gadgets are possible:
  258.  
  259.    ------------------------ 1. Starting Command  --------------------------
  260.  
  261.       format:
  262.          =S
  263.          Command
  264.          [Command ...]
  265.       function:
  266.          Define the commands that will be executed when Starting CliVa.
  267.          No gadgets will be created. This can be usefull if you want to
  268.          assign some values by default to certain variable.
  269.       example:
  270.          =S
  271.          \vs[1]Workbench
  272.          \vs[2]df0:
  273.          \vs[3]df1:
  274.  
  275.          =D "DiskCopy from [2] to [3]"
  276.          DiskCopy \vu[2] TO \vu[3]
  277.  
  278.    ------------------------------ 2. Gadget -------------------------------
  279.  
  280.       format:
  281.          =D Title [Letter_color] [Back_color] [Font_style]
  282.          Command
  283.          [Command ...]
  284.       function:
  285.          Define a gadget. You must supply a title, others are optional.
  286.       example:
  287.          =D "Avail" red blue
  288.          Avail\w
  289.  
  290.    ------------------------------- 3. Menu --------------------------------
  291.  
  292.       format:
  293.          =D* Title [Letter_color] [Back_color] [Font_style]
  294.       function:
  295.          Define a 'Menu'. This kind of gadget cannot execute commands.
  296.          They can be used to seperate different part of your configuration.
  297.          These Gadget wont have the elevated 3d look like regular ones.
  298.          You must supply a title, others are optional.
  299.       example:
  300.          =D* "Tools" white black
  301.  
  302.    -------------------- 4. Definition of a Fix Gadget  --------------------
  303.  
  304.       format:
  305.          =[ position Title [Letter_color] [Back_color] [Font_style]
  306.          Command
  307.          [Command ...]
  308.       function:
  309.          Define a gadget that will show up on every pages, at the same
  310.          location it was defined for. You must supply the position where
  311.          you want it to be located. A negatif number will place the gadget
  312.          counting from the end of the page instead of the beginning.
  313.          Don't forget to keep in mind the UP_TO_DOWN option. The number
  314.          of fix gadget is limited to 29. Be carefull not to put all gadgets
  315.          of a page as Fix ones, in that situation CliVa will fall in a loop
  316.          and will create zillions of gadgets...
  317.       example:
  318.          If NUMBER_GADGET_HORIZONTAL = 4
  319.             NUMBER_GADGET_VERTICAL   = 3
  320.  
  321.          The gadgets will be numbered as:
  322.  
  323.             1    2    3    4           -12  -11  -10   -9
  324.             5    6    7    8     or     -8   -7   -6   -5
  325.             9   10   11   12            -4   -3   -2   -1
  326.  
  327.                   =[ 11 "Next Page" black red
  328.                   \np
  329.  
  330.                   *** is equal to ***
  331.  
  332.                   =[ -2 "Next Page" black red
  333.                   \np
  334.  
  335.    --------------------- 5. definition of a Fix Menu ----------------------
  336.  
  337.       format:
  338.          =[* position Title [Letter_color] [Back_color] [Font_style]
  339.       function:
  340.          Define a Menu that will appear on each pages, starting from the
  341.          location where it is define. For the rest, its the same as a
  342.          Fix Gadget.
  343.  
  344.    --------------- 6. destruction of a gadget or a Fix Menu ---------------
  345.  
  346.       format:
  347.          =] position
  348.       function:
  349.           Kill a Fix Gadget or a Fix Menu.
  350.       example:
  351.          ... many pages WithOUT the Bogus gadget ...
  352.          =[* 2 "Bogus"
  353.          ... many pages WITH the Bogus gadget ...
  354.          =] 2
  355.          ... many pages without the Bogus gadget ...
  356.  
  357.    ---------------------------- 7. Empty Gadget----------------------------
  358.  
  359.       format:
  360.          =E
  361.       function:
  362.          Define a empty gadget. Equal to the defenition:
  363.          =D* ""
  364.  
  365.    --------------------- 8. Empty gadget till next line -------------------
  366.  
  367.       format:
  368.          =L
  369.       function:
  370.          Place 'Empty' gadgets till next line as long as we are not the
  371.          first gadget of the line, if on the first gadget, nothing will be
  372.          done.
  373.  
  374.    --------------------- 9. Empty Gadget till next page -------------------
  375.  
  376.       format:
  377.          =P
  378.       function:
  379.          Place 'empty' gadget till next page as long as we are not the
  380.          first gadget of the page, if on the first gadget, nothing will be
  381.          done.
  382.  
  383.    ------- 10. Add an APPMenu to the Tools menu of the Workbench ----------
  384.  
  385.       format:
  386.          =M Title
  387.          Command
  388.          [Command ...]
  389.       fonction:
  390.          Define an APPMenu.  You must supply a title.  You cannot use variable
  391.          in the title...
  392.          (ex. '=M "See [1]"' => Title will be "See [1]".)
  393.       exemple:
  394.          =M "See Texte"
  395.          more \f1
  396.  
  397. Options available on the command script line
  398. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  399.  
  400. All options start with a BackSlash ('\') and are followed by arguments
  401. define between brackets ('[', ']').  If an argument define as
  402. [^<number>], then the content of the variable <number> will be used.
  403.    ex.
  404.    \vs[1]You have selected the file \f1!
  405.    \pa[Information][^1][OK]
  406.  
  407. Notes.
  408.      - When the argument of a command is 'starting directory', you can
  409.      place a [-] to keep it effective. This function is only usefull when
  410.      you want to supply values to other arguments (ex. the title) with out
  411.      having to define it again.
  412.      ex.
  413.      Copy \f1[dh0:][From Which file?] TO \f1[][To Which file?]
  414.      => This way, the starting directory of the second \f1 will be the
  415.      current directory. But if you replace the second \f1 by
  416.      '\f1[-][To Which file?]' then the current directory will be the one
  417.      from which file are copied from, which more practical..
  418.  
  419.      - When the argument is a 'Question', you can place '@' in the question
  420.      which will insert a line feed at that place.
  421.  
  422.      - The variables used in this part of CliVa are define by a number of
  423.      variable (1 to 15000) and by the content of that variable. Once
  424.      define, the variable can be used just about anywhere. For example,
  425.      the content of a variable can be used as a gadget title (see gadget
  426.      defenition). Be carefull not to get mixed up using CliVa's local
  427.      variables and the 'Env:' environment variables, you must use the
  428.      \vfe and \vte functions which provide a way of importing and exporting
  429.      the content of 'Env:' environments with a CliVa's variable.
  430.  
  431. ---------------------------------------------------------------------------
  432.  
  433.     option: \b
  434.   function: Executes a backspace in the command.
  435.    example: Copy df0: to df0:\b\b1:  =>  Copy df0: to df1:
  436.  
  437. ---------------------------------------------------------------------------
  438.  
  439.     option: \d[starting directory][window title]
  440. Arg oblig.: None.
  441.   function: Opens a directory requester.
  442.    example: cd \d[ram:][Which directory?]
  443.  
  444. ---------------------------------------------------------------------------
  445.  
  446.     option: \dl
  447.   function: Insert the last directory selected.  If \f1 or \fm as been
  448.             used, the path will be inserted. This option can be very
  449.             useful, take for instance the following example.
  450.    example: \vs[1]\f1[][File to be executed?]
  451.             cd \dl         => The current directory is the one where
  452.             \vu[1]         => the file to be executed is located.
  453.  
  454. ---------------------------------------------------------------------------
  455.  
  456.     option: \f1[starting directory][window title][pattern]
  457. Arg oblig.: None.
  458.   function: Open a file requester. The selected file will be inserted in
  459.             the script.
  460.    example: Unwarp \f1[download:][Which file?][*.wrp]
  461.  
  462. ---------------------------------------------------------------------------
  463.  
  464.     option: \fl[extension]
  465. Arg oblig.: None.
  466.   function: Insert the last selected file. You can change the extension
  467.             of the file.
  468.    example: shamsharp \f1 \fl[iff]  ==>  shamsharp "image.gif" "image.iff"
  469.  
  470. ---------------------------------------------------------------------------
  471.  
  472.     option: \fm[starting directory][window title][pattern][max]
  473. Arg oblig.: None.
  474.   function: Open a multiple file requester. You can specify a maximum
  475.             number of files to be selected.
  476.    example: View80 \fm[text:][Texts to read?][*][10]
  477.  
  478. ---------------------------------------------------------------------------
  479.  
  480.     option: \g and \G
  481.   function: By default, the files and directories are quoted.
  482.             These options give you the possibility to remove or insert
  483.             quotes.
  484.             \g -> No quotes.
  485.             \G -> Insert quotes.
  486.    example: View80 \f \g\f \G\f    => view80 "file1" file2 "file3"
  487.  
  488. ---------------------------------------------------------------------------
  489.  
  490.     option: \o et \O
  491.   function: By default, the file is preceded by its path.
  492.             These options give you the possibility to remove or insert
  493.             the path.
  494.             \o -> No path.
  495.             \O -> Insert the path.
  496.    example: Deksid \f1        =>  Deksid "dh0:rep/file"
  497.             Deksid \o\f1      =>  Deksid "file"
  498.             Deksid \O\f1      =>  Deksid "dh0:rep/file"
  499.  
  500. ---------------------------------------------------------------------------
  501.  
  502.     option: \pa[window title][question][Left Cont][Middle Cont][Right Cont]
  503.                            [Left Content][Middle Content][Right Content]
  504. Arg needed: Window tiltle and Question.
  505.   function: Open a requester. If the Left answer is selected, then its
  506.             content is inserted in the script. Same thing for Middle and
  507.             Right.
  508.    example: \pa[Info][Which drive?][df0:][][df1:][df0:][][df1:]
  509.  
  510. ---------------------------------------------------------------------------
  511.  
  512.     option: \q[content by default][window title]
  513. Arg needed: Content and Title.
  514.   function: Ask a question.
  515.    example: Unwarp \f1 \q[df0:][Which drive?]
  516.  
  517. ---------------------------------------------------------------------------
  518.  
  519.     option: \ql
  520.   function: Insert the last answer to a question.
  521.    example: cd \q[df0:][Which Drive?]
  522.             Unwarp \f1 \ql
  523.  
  524. ---------------------------------------------------------------------------
  525.  
  526.     option: \ivs[variable number]
  527. Arg needed: Variable number.
  528.   function: If the variable IS NOT define, the remaining of the current line
  529.             will be analysed.
  530.    example: \ivs[1]\vs[1]\d[ram:][Open a Shell in which directory?]
  531.             NewShell \vu[1] => The first time this gadget will be executed
  532.                                the directory will be asked. Then the
  533.                                command "NewShell Dir" will be executed
  534.                                without entering anything.
  535.  
  536. ---------------------------------------------------------------------------
  537.  
  538.     option: \vc[variable number]
  539. Arg needed: None.
  540.   function: Clear one or all variables of CliVa. If no argument are passed
  541.             to this function, all variables will be erased.
  542.             You should always clear local variables to one gadget, since
  543.             each variable requires memory.
  544.    example: \vs[1]You have selected the file \f1
  545.             \pa[Info][^1]
  546.             \vc[1]
  547.  
  548. ---------------------------------------------------------------------------
  549.  
  550.     option: \ved[variable number][content targeted]
  551. Arg needed: Variable number and the content targeted.
  552.   function: If the variable is define and its content IS EQUAL to the
  553.             targeted one, the rest of the current line will be analysed.
  554.             (possibility to use pattern when you have the OS 2.0)
  555.    example: \vs[1]\pa[Info][Question?][Choice a][Choice b][Choice c][a][b][c]
  556.             \ved[1][a]Command for choice a.
  557.             \ved[1][a]Other command for choice a.
  558.             \ved[1][b]Command for choice b.
  559.             \ved[1][c]Command for choice c.
  560.  
  561. ---------------------------------------------------------------------------
  562.  
  563.     option: \vnd[variable number][content targeted]
  564. Arg needed: Variable number and the content targeted.
  565.   function: If the variable is define and its content IS NOT EQUAL to the
  566.             targeted one, the rest of the current line will be analysed.
  567.             (possibility to use pattern when you have the OS 2.0)
  568.  
  569. ---------------------------------------------------------------------------
  570.  
  571.     option: \vfe[CliVa variable number][name of the variable ENV:]
  572. Arg needed: CliVa Variable number and the name of the variable ENV:.
  573.   function: Import the content of a variable 'ENV:' in one of 'CliVa'.
  574.             You must use this function if you want (for example) to modify
  575.             the content of a Environment 'ENV:'.
  576.             Note: the name of the variable 'ENV:' can contain a path
  577.             (ex. 'ram:env/Workbench') but it must not be Quoted.
  578.    example: \vs[1]\g\o\f1[ENV:][Modify which variable ENV:?]
  579.             \vfe[2][^1]
  580.             \vm[2]
  581.             \vte[2][^1]
  582.  
  583. ---------------------------------------------------------------------------
  584.  
  585.     option: \vm[variable number]
  586. Arg needed: Variable number.
  587.   function: Modify the content of a variable. The window title will be
  588.             'Modify variable', if that title doesn't reflect your needs,
  589.             you can always use the \q option which of a more general nature.
  590.             \vm[1]    ===     \vs[1]\q[^1][Other Title]
  591.    example: \vs[1]\f1         => 'ram:env/Workbench'
  592.             \vm[1]
  593.             Deksid \vu[1]\vc[1]
  594.  
  595. ---------------------------------------------------------------------------
  596.  
  597.     option: \vs[variable number][Content]
  598. Arg needed: Variable number.
  599.   function: Assign the content of a variable.  If Content is provided,
  600.             Content will be assigned to the variable.  Otherwise the content
  601.             assigned will be the analysed result of the line on which \vs is.
  602.             The variable number must be between 1 and 15000.  If you enter a
  603.             number outside of this range, CliVa will accept it but the result
  604.             could be surprising.
  605.    example: You have chosen \f1.\vs[1]
  606.                      => Variable 1 = 'You have chosen a "file".'
  607.             \vs[1][Dummy1]\vs[2][Dummy2]
  608.                      => Variable 1 = 'Dummy1' and Variable 2 = 'Dummy2'
  609.  
  610. ---------------------------------------------------------------------------
  611.  
  612.     option: \vte[CliVa variable number][name of the variable ENV:]
  613. Arg needed: CliVa variable number and the name of the variable ENV:.
  614.   function: Export the content of the CliVa variable to the ENV: variable.
  615.             Note: Unlike \vfe, the name of the variable ENV: can not
  616.             contain the path..
  617.    example: \vfe[2][WorkBench]
  618.             \vm[2]
  619.             \vte[2][WorkBench]
  620.  
  621. ---------------------------------------------------------------------------
  622.  
  623.     option: \vu[variable number][content by default]
  624. Arg needed: Variable number.
  625.   function: Insert in the script the content of a variable. If the variable
  626.             is not define, the default content will be used.
  627.    example: Format DRIVE \vu[1][df0:] name \q[Stuff][New name?]\w\nd
  628.  
  629. ---------------------------------------------------------------------------
  630.  
  631.     option: \I
  632.   function: After the gadget as been executed, CliVa will iconify.
  633.    example: CliVa s:other.config\I
  634.  
  635. ---------------------------------------------------------------------------
  636.  
  637.     option: \Q
  638.   function: After the gadget as been executed, CliVa will quit.
  639.    example: CliVa s:CliVa.config\Q  ==>  RE-LOAD CliVa config.
  640.  
  641. ---------------------------------------------------------------------------
  642.  
  643.     option: \np
  644.   function: After the gadget as been executed, the page number will be
  645.             incremented by one. Many \np can be in the same command.
  646.    example: =D "Next Page"
  647.             \np
  648.  
  649. ---------------------------------------------------------------------------
  650.  
  651.     option: \pp
  652.   function: After the gadget as been executed, the page number will be
  653.             decremented by one. Many \pp can be in the same command
  654.    example: =D "Précédente Page"
  655.             \pp
  656.  
  657. ---------------------------------------------------------------------------
  658.  
  659.     option: \p[page number]
  660. Arg needed: Page number.
  661.   function: After the gadget as been executed, the page number will be
  662.             changed to the one supplied.
  663.    example: =D "Go to page 3"
  664.             \p[3]
  665.  
  666. ---------------------------------------------------------------------------
  667.  
  668.     option: \sa
  669.   function: DeSelect the AutoIconify option in the menu.
  670.  
  671. ---------------------------------------------------------------------------
  672.  
  673.     option: \sA
  674.   function: Select the AutoIconify option in the menu.
  675.  
  676. ---------------------------------------------------------------------------
  677.  
  678.     option: \sm
  679.   function: DeSelect the modify option in the menu.
  680.  
  681. ---------------------------------------------------------------------------
  682.  
  683.     option: \sM
  684.   function: Select the modify option in the menu.
  685.  
  686. ---------------------------------------------------------------------------
  687.  
  688.     option: \m
  689.   function: The line which contains \m may be modified when the gadget is
  690.             executed. See the 'Modify Command' option.
  691.    example: cd dh0:     ==>   doesn't modify
  692.             Avail\m     ==>   modify's
  693.             dir         ==>   doesn't modify
  694.  
  695. ---------------------------------------------------------------------------
  696.  
  697.     option: \M
  698.   function: Starting at the line where \M is, all lines can be modified
  699.             when the gadget is executed. See the 'Modify Command' option.
  700.    example: cd dh0:     ==>   doesn't modify
  701.             Avail\M     ==>   modify's
  702.             dir         ==>   modify's
  703.  
  704. ---------------------------------------------------------------------------
  705.  
  706.     option: \ael[Window Title][Question][Positive Resp][Negative Resp]
  707. Arg needed: Window Title and Question.
  708.   function: If the answer is Positive, then the rest of the current line
  709.             will be analysed.
  710.    example: avail
  711.             \eal[Question][Execute Deksid before dir?][Yes][No]Deksid
  712.             dir
  713.  
  714. ---------------------------------------------------------------------------
  715.  
  716.     option: \aes[Window title][Question][Positive Resp][Negative Resp]
  717. Arg needed: Window Title and Question.
  718.   function: If the answer is Positive, then the rest of the lines will be
  719.             analysed.
  720.    example: avail
  721.             \aes[Question][Execute Deksid and dir?][Yes][No]Deksid
  722.             dir
  723.  
  724. ---------------------------------------------------------------------------
  725.  
  726.     option: \des[Window Title][Question][Positive Resp][Negative Resp]
  727. Arg needed: None
  728.   function: If the  answer to the question is Negative or the title and
  729.             the question are not supplied, Then the script will not be
  730.             executed.
  731.    example: avail
  732.             \des[Question][Execute Avail, Deksid and dir?][Yes][No]Deksid
  733.             dir
  734.  
  735. ---------------------------------------------------------------------------
  736.  
  737.     option: \es
  738.   function: Execute the content of the script after the current line as
  739.             been analysed even if the analysis is not fully completed.
  740.             Once the script as been started, the rest of the commands will
  741.             be analysed.
  742.    example: avail\es\w
  743.             dir\es\w       => opens 2 output windows, and executed
  744.                               asynchronously avail and Dir
  745.  
  746. ---------------------------------------------------------------------------
  747.  
  748.     option: \nd
  749.   function: By default, if the \w option is used, the following DOS command
  750.             will be added to the script 'echo Press mouse button' and
  751.             'mouse'.  Which will prevent the window from closing till you
  752.             hit the mouse button to exit. With the \nd option, these two
  753.             commands are not added to the script.
  754.    example: echo "Read quickly :)"\w\nd
  755.  
  756. ---------------------------------------------------------------------------
  757.  
  758.     option: \w
  759.   function: Signals the script that an OutPut window is needed. What this
  760.             is really, the DOS command executed will be
  761.                'NewShell "shell_window_definition" from script'
  762.             instead of
  763.                'Execute script'
  764.    example: avail\w
  765.  
  766. ---------------------------------------------------------------------------
  767.  
  768.     option: \X
  769.   function: Execute immediately the line where \X is. This line will not be
  770.             included in the final script. The analysis of the commands will
  771.             be halted till the execution of that line is not completed.
  772.    example: more text\X
  773.             \pa[Question][The Text is OK?][Yes][Maybe][No]
  774.  
  775. ---------------------------------------------------------------------------
  776.  
  777. SPECIAL
  778. ~~~~~~~
  779.  - When you click on a gadget, you can press in the same time on the fonction
  780. key (Control, Alt, Amiga). These variables will be initialised.
  781.    - variable number 15001 <- 'CONTROL'  if the CONTROL key is pressed.
  782.    - variable number 15002 <- 'R-ALT'    if the RIGHT-ALT key is pressed.
  783.    - variable number 15003 <- 'L-ALT'    if the LEFT-ALT key is pressed.
  784.    - variable number 15004 <- 'ALT'      if one of the ALT key is pressed.
  785.    - variable number 15005 <- 'R-AMIGA'  if the RIGHT-AMIGA key is pressed.
  786.    - variable number 15006 <- 'L-AMIGA'  if the LEFT-AMIGA key is pressed.
  787.    - variable number 15007 <- 'AMIGA'    if one of the AMIGA key is pressed.
  788. Exemple.
  789.    =D "Avail"
  790.    \ved[15001][CONTROL] Avail    => if the CONTROL key is pressed -> 'Avail'
  791.    \vnd[15001][CONTROL] Avail flush    => Otherwise 'Avail flush'
  792.  
  793. MENU
  794. ~~~~
  795.  - AutoIconify: When this option is selected, CliVa will iconify
  796.                 automatically after each execution of a gadget that
  797.                 contains at least one DOS command. This way, gadgets
  798.                 like 'Next Page' can be executed without having
  799.                 CliVa iconifying.
  800.  
  801.  - Modify: All lines in the gadget defenition can be modified before
  802.            they are inserted in the script. If one of the SHIFT key
  803.            is press while clicking on a gadget, the modify option will
  804.            be active during the analysis of the commands.
  805.  
  806. History
  807. ~~~~~~~
  808.    version 2.0:   Marsh 30, 93
  809.    ------------
  810.    First official version.
  811.  
  812.    version 2.1:   October 16, 93          Size: 19776
  813.    ------------
  814.    Minor BUG - A couple of Small bugs removed.
  815.    NEW - New option 'NO_HIDDEN_BUTTON', this option will not put an invisible
  816.          ScrollBar to the window when the option 'NO_DRAG_BAR' is used.
  817.  
  818.    version 2.2:   November 3, 93          Size: 20356
  819.    ------------
  820.    NEW - A new option '=M name' that define an element who will be linked to
  821.          the 'Tools' menu of the Workbench. (OS 2.0 only)
  822.    NEW - Pattern can now be used in the option '\ved' and '\vnd'.
  823.          (ex. '\ved[1][*.c]CED \vu[1]' => if it is a source, use CygnusEd)
  824.          (OS 2.0 only)
  825.    Minor BUG - CliVa had some problem to determine the exact size of the
  826.                workbench.  Bug removed.
  827.    Minor BUG - Some probleme when using the option '\fl[new extension' with
  828.                the 'no path' option selectionned ('\o'). Bug removed.
  829.  
  830.    version 2.3:   January 12, 1994        Size: 20352
  831.    ------------
  832.     NEW - The enregistred user will receive a key file that will modify the
  833.          About text.
  834.     Major BUG - CliVa had a bug in with the Menus in conjunction with the
  835.                Iconified state.  Bug removed.
  836.  
  837. To Do
  838. ~~~~~
  839.         - Use the ReqTools.library instead of Req.library.
  840.         - Addition of 'shortcuts' to the gadgets.
  841.         - Possibility to use names for variables instead of numbers.
  842.         - Make a more WB2.0 specific version.
  843.  
  844. To reach and encourage me:
  845. ~~~~~~~~~~~~~~~~~~~~~~~~~~
  846.  CLIVA is a Shareware product, which means if you use it much, then you
  847.  should pay for it. A 15$ contribution is suggested. Any other contribution
  848.  are also accepted. Do not hesitate to give me some feedback through the
  849.  networks on CLIVA. All Amiga Clubs and disks public domain collections like
  850.  Fred Fish, are encouraged to make CliVa part of there disks collections.
  851.  
  852.                      1:167.151.0@fidonet
  853.  Christian Warren   40:600/151.0@amiganet
  854.                    101:166/106.0@francomedia
  855.  
  856.                    Christian Warren
  857.                    2201 Edouard-MontPetit #11
  858.                    Montréal, Qué, CANADA
  859.                    H3T 1J3
  860.  
  861. Thanks to
  862. ~~~~~~~~~
  863.  - C.W. Fox and Bruce Dawson: for there fantastic File Requester
  864.                               and Color Requester libraries.
  865.  - Nico Francois: For is excellent libraries.
  866.                   (ReqTools et PowerPacker).
  867.  - Denis Turcotte: For have been the official Beta-tester, for 'forcing me'
  868.                    to implement a bunch of functions and to have translated
  869.                    these docs.. Will he make the .guide's!!
  870.